<!-- HTML header for doxygen 1.8.13-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>MTB CAT1 Peripheral driver library: MS CTL       (Master Security Controller)</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen_style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><a href="http://www.cypress.com/"><img alt="Logo" src="IFXCYP_one-line.png"/></a></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">MTB CAT1 Peripheral driver library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group__group__ms__ctl.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#groups">API Reference</a>  </div>
  <div class="headertitle">
<div class="title">MS CTL (Master Security Controller)</div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">General Description</h2>
<p>MS CTL is the Master Security Controller which helps to protect the transactions initiated on the bus. </p>
<p>MSC is instantiated on non-CPU paths to provide security extension attributes and to add TrustZone-M capability. MSC Driver provides APIs to configure access rights to the given master for each Protection Context. Maximum of 32 masters are supported. It also provides API to set the active PC.</p>
<p>The functions and other declarations used in this driver are in cy_ms_ctl.h. You can include cy_pdl.h (ModusToolbox only) to get access to all functions and declarations in the PDL.</p>
<p>You can use this driver to protect the transactions initiated on the bus.</p>
<p>CAT1D devices support multiple CPU subsystems, viz. SYSCPUSS and APPCPUSS. Each subsystem has its own version of MS_CTL IP within it. In order to support MS_CTL IP in the APPCPUSS, new set of APIs with suffix V1 are added.</p>
<p>Following APIs are used for MS_CTL IP in CAT1D device SYSCPUSS <br />
 Cy_Ms_Ctl_ConfigBusMaster <br />
 Cy_Ms_Ctl_ConfigMscAcgResp <br />
 Cy_Ms_Ctl_SetActivePC <br />
 Cy_Ms_Ctl_GetActivePC <br />
 Cy_Ms_Ctl_SetPcHandler <br />
 Cy_Ms_Ctl_GetPcHandler <br />
</p>
<p>Following APIs are used for MS_CTL IP in CATD device APPCPUSS <br />
 Cy_Ms_Ctl_ConfigBusMasterV1 <br />
 Cy_Ms_Ctl_ConfigMscAcgRespV1 <br />
 Cy_Ms_Ctl_SetActivePCV1 <br />
 Cy_Ms_Ctl_GetActivePCV1 <br />
</p>
<h1><a class="anchor" id="group_ms_ctl_more_information"></a>
More Information</h1>
<p>For more information on the MSC , refer to the technical reference manual (TRM).</p>
<h1><a class="anchor" id="group_ms_ctl_MISRA"></a>
MISRA-C Compliance</h1>
<p>The mSc driver does not have any specific deviations.</p>
<h1><a class="anchor" id="group_ms_ctl_changelog"></a>
Changelog</h1>
<table class="doxtable">
<tr>
<th>Version</th><th>Changes</th><th>Reason for Change </th></tr>
<tr>
<td>1.2 </td><td>Updated API <a class="el" href="group__group__ms__ctl__functions.html#gae5950bbc842cdd6e0d00434fd5177bfd">Cy_Ms_Ctl_SetPcHandler</a>. </td><td>Defect fix.  </td></tr>
<tr>
<td>1.1 </td><td>Added support for CAT1D devices, Corrected typo in API </td><td>Support for CAT1D devices  </td></tr>
<tr>
<td>1.0 </td><td>Initial version </td><td></td></tr>
</table>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a>
API Reference</h2></td></tr>
<tr class="memitem:group__group__ms__ctl__macros"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__ms__ctl__macros.html">Macros</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:group__group__ms__ctl__functions"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__ms__ctl__functions.html">Functions</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:group__group__ms__ctl__enums"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__ms__ctl__enums.html">Enumerated Types</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part
<div id="nav-path" class="navpath">
    <ul>
        <li class="footer">
            Generated for <b>MTB CAT1 Peripheral driver library</b> by <b>Cypress Semiconductor Corporation</b>.
            All rights reserved.
        </li>
    </ul>
</div>
-->
</body>
</html>
